Services for which information is distributed through a communication network may be referred to as network services. “Web services” are an example of network services, and represent the next generation of technology being used for automatically exchanging information between different applications over the public Internet and many private networks. Web services provide a framework for building web-based distributed applications, and can provide efficient and effective automated machine-to-machine communications.
From a technology point of view, web services are network accessible functions that can be accessed using standard Internet protocols such as HyperText Transfer Protocol (HTTP), eXtensible Markup Language (XML), Simple Object Access Protocol (SOAP), etc., over standard interfaces.
The real power of web services technology is in its simplicity. The core technology only addresses the common language and communication issues and does not directly address the onerous task of application integration. Web services can be viewed as a sophisticated machine-to-machine Remote Procedure Call (RPC) technology for interconnecting multiple heterogeneous untrusted systems. Web services take the best of many new technologies by utilizing XML technology for data conversion/transparency and Internet standards such as HTTP and Simple Mail Transfer Protocol (SMTP) for message transport.
One of the primary drivers behind the development and standardization of web services is the ability to facilitate seamless machine-to-machine application-level communications by providing a loose coupling between disparate applications. Such a loose coupling of applications allows applications on different servers to interoperate without requiring a static, inflexible interface between them. Applications using very different technologies can interoperate using standard web services protocols.
A significant problem faced by network and application administrators in respect of network services, or more generally network applications by which services are exposed to users, is the ability to monitor service availability and performance, based on performance baselines or other metrics, for services provided within an organization and across organizational boundaries. Good corporate governance dictates that proper monitoring and control points be in place for all business activities.
Individual software applications and services may provide control and reporting of performance of a particular application at the service provider, but they do not have the capability to provide a consolidated end-to-end view of service performance at the service provider and the service consumer or any other points along a service transaction path. Distributed application and service management products similarly only reflect service performance at a service provider, and not at other strategic network monitoring points. These types of application provider- or server-based monitoring approaches are also unable to monitor service performance between independently controlled networks that are in different administrative realms.
Network nodes that process service access messages, such as existing firewalls and gateways, may provide a log of all Internet Protocol (IP) messages that have been processed. They do not, however, supply the ability to track service performance for a particular service and provide a consolidated record of service performance across different networks or administrative realms.
Thus, there remains a need for improved service performance monitoring schemes.